Skip to contents
## Error in get(paste0(generic, ".", class), envir = get_method_env()) : 
##   object 'type_sum.accel' not found
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
# Set global chunk options
knitr::opts_chunk$set(fig.height = 8, fig.width = 8)

Figures

Figure 1

A - Continental US A11

state_frequencies <- CensusHLA::census_adjusted_nmdp_hla_frequencies_by_state |> dplyr::filter(allele == 'A*11:01')

out_data <- state_frequencies |>
  dplyr::ungroup() |>
  dplyr::group_by(region, census_region, fips) |>
  dplyr::summarize(gf = sum(us_2020_nmdp_gf))
## `summarise()` has grouped output by 'region', 'census_region'. You can override
## using the `.groups` argument.
gg_state <- usmap::plot_usmap(
  data = out_data,
  regions = "states",
  #exclude = c('Alaksa','Hawaii'),
  exclude = c('AK', 'HI'),
  values = "gf",
  color = "black",
  linewidth = 0.1
) +
  viridis::scale_fill_viridis(option = "plasma", direction = 1)

gg_state

B - A11 by County

info_by_county <- CensusHLA::census_adjusted_nmdp_hla_frequencies_by_county |> 
  dplyr::filter(!(state %in% c('Alaska','Hawaii'))) |> 
  dplyr::filter(allele == 'A*11:01') 

out_data <- info_by_county |>
  dplyr::ungroup() |>
  dplyr::filter(allele == 'A*11:01') |>
  dplyr::group_by(region, state, census_region, county, fips, loci, allele) |>
  dplyr::summarize(gf = sum(us_2020_nmdp_gf)) |>
  dplyr::filter(!(is.na(gf))) |>
  # Create a STATEFP and COUNTYFP column by breaking the fips column on the 3rd character to the end
  dplyr::mutate(STATEFP = substr(fips, 1, 2),
                COUNTYFP = substr(fips, 3, nchar(fips)))
## `summarise()` has grouped output by 'region', 'state', 'census_region',
## 'county', 'fips', 'loci'. You can override using the `.groups` argument.
out_data <-
  out_data |>
  dplyr::mutate(
    county = dplyr::case_when(
      state == "Connecticut" &
        census_region == "Litchfield County, Connecticut" ~ "Northwest Hills Planning Region",
      state == "Connecticut" &
        census_region == "Hartford County, Connecticut" ~ "Capitol Planning Region",
      state == "Connecticut" &
        census_region == "Middlesex County, Connecticut" ~ "Lower Connecticut River Valley Planning Region",
      state == "Connecticut" &
        census_region == "Windham County, Connecticut" ~ "Northeastern Connecticut Planning Region",
      state == "Connecticut" &
        census_region == "New Haven County, Connecticut" ~ "South Central Connecticut Planning Region",
      state == "Connecticut" &
        census_region == "New London Count, Connecticut" ~ "Southeastern Connecticut Planning Region",
      state == "Connecticut" &
        census_region == "Fairfield County, Connecticut" ~ "Western Connecticut Planning Region",
      state == "Connecticut" &
        census_region == "Tolland County" ~ "Capitol Planning Region",
      census_region == "Doña Ana County" ~ "Donna Ana County",
      census_region == "Chugach Census Area" ~ "Valdez-Cordova Census Area",
      census_region == "Copper River Census Area" ~ "Valdez-Cordova Census Area",
      T ~ census_region
    )) |> 
  dplyr::mutate(
    fips = dplyr::case_when(state == "Connecticut" & county == "Northwest Hills Planning Region" ~ "09160",
                        state == "Connecticut" & county == "Greater Bridgeport Planning Region" ~ "09120",
                        state == "Connecticut" & county == "Lower Connecticut River Valley Planning Region" ~ "09130",
                        state == "Connecticut" & county == "Naugatuck Valley Planning Region" ~ "09140",
                        state == "Connecticut" & county == "Northeastern Connecticut Planning Region" ~ "09150",
                        state == "Connecticut" & county == "South Central Connecticut Planning Region" ~ "09170",
                        state == "Connecticut" & county == "Southeastern Connecticut Planning Region" ~ "09180",
                        state == "Connecticut" & county == "Western Connecticut Planning Region" ~ "09190",
                        state == "Connecticut" & county == "Capitol Planning Region" ~ "09110",
                        T ~ fips)
    )

gg_a11_by_county <- 
  usmap::plot_usmap(
  data = out_data,
  regions = "counties",
  exclude = c('AK','HI'),
  #include = c('AK', 'HI'),
  values = "gf",
  color = "black",
  linewidth = 0.1
) +
  viridis::scale_fill_viridis(option = "plasma", direction = 1)

gg_a11_by_county

C - NDMP Correlations

D - A11 by CA County

info_by_county <- CensusHLA::census_adjusted_nmdp_hla_frequencies_by_county |> 
  dplyr::filter(state %in% c('California')) |> 
  dplyr::filter(allele %in% c('A*11:01','A*02:01','A*03:01'))
out_data <- info_by_county |>
  dplyr::ungroup() |>
  dplyr::filter(allele == 'A*11:01') |>
  dplyr::group_by(region, state, census_region, county, fips, loci, allele) |>
  dplyr::summarize(gf = sum(us_2020_nmdp_gf)) |>
  dplyr::filter(!(is.na(gf))) |>
  # Create a STATEFP and COUNTYFP column by breaking the fips column on the 3rd character to the end
  dplyr::mutate(STATEFP = substr(fips, 1, 2),
                COUNTYFP = substr(fips, 3, nchar(fips)))
## `summarise()` has grouped output by 'region', 'state', 'census_region',
## 'county', 'fips', 'loci'. You can override using the `.groups` argument.
gg_a11_in_ca <- 
  usmap::plot_usmap(
  data = out_data,
  regions = "counties",
  include = c('CA'),
  values = "gf",
  color = "black",
  linewidth = 0.1
) +
  viridis::scale_fill_viridis(option = "plasma", direction = 1)

gg_a11_in_ca

E A11 by CA by H4 Hexagon

state_info <- CensusHLA::query_state_codes()
ca_4 <- CensusHLA::summarize_tract_genotypic_frequencies_by_h3_hexagon(
  state_abbreviation = 'CA',
  query_allele = 'A*11:01',
  h3_resolution = 4
)
## INFO [2025-04-15 14:05:07] Working with state: CA
## Adding missing grouping variables: `census_region`
## Reading layer `tl_2020_06_tract' from data source 
##   `/tmp/RtmpNVZfXa/temp_libpath20d2410713c6/CensusHLA/extdata/tiger_2020/tract/tl_2020_06_tract.shp' 
##   using driver `ESRI Shapefile'
## Simple feature collection with 9129 features and 12 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XY
## Bounding box:  xmin: -124.482 ymin: 32.52883 xmax: -114.1312 ymax: 42.0095
## Geodetic CRS:  NAD83
## INFO [2025-04-15 14:05:51] Working with state: CA
## Data has been transformed to EPSG:4326.
## Warning: st_centroid assumes attributes are constant over geometries
## Data has been transformed to EPSG:4326.
## Joining with `by = join_by(nmdp_race_code)`
ca_4$p1

F A11 Catchment

gg_catchment <- plot_delNero2022_catchment_areas(
  query_allele = 'A*11:01',
  CensusHLA::a11_catchment_summed$sf_tract_centroids_for_all_states_with_catchment_with_us_population_race_code_percentages_by_tract_summed
)
## Warning in layer_sf(geom = GeomSf, data = data, mapping = mapping, stat = stat,
## : Ignoring unknown parameters: `line`
gg_catchment

Figure 2 [X}]

A - B:58:01 by County

info_by_county <- CensusHLA::census_adjusted_nmdp_hla_frequencies_by_county |> 
  dplyr::filter(!(state %in% c('Alaska','Hawaii'))) |> 
  dplyr::filter(allele == 'B*58:01') 

out_data <- info_by_county |>
  dplyr::ungroup() |>
  dplyr::filter(allele == 'B*58:01') |>
  dplyr::group_by(region, state, census_region, county, fips, loci, allele) |>
  dplyr::summarize(gf = sum(us_2020_nmdp_gf)) |>
  dplyr::filter(!(is.na(gf))) |>
  # Create a STATEFP and COUNTYFP column by breaking the fips column on the 3rd character to the end
  dplyr::mutate(STATEFP = substr(fips, 1, 2),
                COUNTYFP = substr(fips, 3, nchar(fips)))
## `summarise()` has grouped output by 'region', 'state', 'census_region',
## 'county', 'fips', 'loci'. You can override using the `.groups` argument.
out_data <-
  out_data |>
  dplyr::mutate(
    county = dplyr::case_when(
      state == "Connecticut" &
        census_region == "Litchfield County, Connecticut" ~ "Northwest Hills Planning Region",
      state == "Connecticut" &
        census_region == "Hartford County, Connecticut" ~ "Capitol Planning Region",
      state == "Connecticut" &
        census_region == "Middlesex County, Connecticut" ~ "Lower Connecticut River Valley Planning Region",
      state == "Connecticut" &
        census_region == "Windham County, Connecticut" ~ "Northeastern Connecticut Planning Region",
      state == "Connecticut" &
        census_region == "New Haven County, Connecticut" ~ "South Central Connecticut Planning Region",
      state == "Connecticut" &
        census_region == "New London Count, Connecticut" ~ "Southeastern Connecticut Planning Region",
      state == "Connecticut" &
        census_region == "Fairfield County, Connecticut" ~ "Western Connecticut Planning Region",
      state == "Connecticut" &
        census_region == "Tolland County" ~ "Capitol Planning Region",
      census_region == "Doña Ana County" ~ "Donna Ana County",
      census_region == "Chugach Census Area" ~ "Valdez-Cordova Census Area",
      census_region == "Copper River Census Area" ~ "Valdez-Cordova Census Area",
      T ~ census_region
    )) |> 
  dplyr::mutate(
    fips = dplyr::case_when(state == "Connecticut" & county == "Northwest Hills Planning Region" ~ "09160",
                        state == "Connecticut" & county == "Greater Bridgeport Planning Region" ~ "09120",
                        state == "Connecticut" & county == "Lower Connecticut River Valley Planning Region" ~ "09130",
                        state == "Connecticut" & county == "Naugatuck Valley Planning Region" ~ "09140",
                        state == "Connecticut" & county == "Northeastern Connecticut Planning Region" ~ "09150",
                        state == "Connecticut" & county == "South Central Connecticut Planning Region" ~ "09170",
                        state == "Connecticut" & county == "Southeastern Connecticut Planning Region" ~ "09180",
                        state == "Connecticut" & county == "Western Connecticut Planning Region" ~ "09190",
                        state == "Connecticut" & county == "Capitol Planning Region" ~ "09110",
                        T ~ fips)
    )

gg_b58_by_county <- 
  usmap::plot_usmap(
  data = out_data,
  regions = "counties",
  exclude = c('AK','HI'),
  #include = c('AK', 'HI'),
  values = "gf",
  color = "black",
  linewidth = 0.1
) +
  viridis::scale_fill_viridis(option = "plasma", direction = 1)

gg_b58_by_county

B - B58:01 in MS by County

info_by_county <- CensusHLA::census_adjusted_nmdp_hla_frequencies_by_county |> 
  dplyr::filter(state %in% c('Mississippi')) |> 
  dplyr::filter(allele %in% c('B*58:01'))
out_data <- info_by_county |>
  dplyr::ungroup() |>
  dplyr::filter(allele == 'B*58:01') |>
  dplyr::group_by(region, state, census_region, county, fips, loci, allele) |>
  dplyr::summarize(gf = sum(us_2020_nmdp_gf)) |>
  dplyr::filter(!(is.na(gf))) |>
  # Create a STATEFP and COUNTYFP column by breaking the fips column on the 3rd character to the end
  dplyr::mutate(STATEFP = substr(fips, 1, 2),
                COUNTYFP = substr(fips, 3, nchar(fips)))
## `summarise()` has grouped output by 'region', 'state', 'census_region',
## 'county', 'fips', 'loci'. You can override using the `.groups` argument.
gg_b58_in_ms <- 
  usmap::plot_usmap(
  data = out_data,
  regions = "counties",
  include = c('MS'),
  values = "gf",
  color = "black",
  linewidth = 0.1
) +
  viridis::scale_fill_viridis(option = "plasma", direction = 1) + 
  theme(legend.position = 'right' )

gg_b58_in_ms

C - B58:01 in MS by Hexagon [X}]

ms_4 <-
  CensusHLA::summarize_tract_genotypic_frequencies_by_h3_hexagon(
    state_abbreviation = 'MS',
    query_allele = 'B*58:01',
    h3_resolution = 4
  )
## INFO [2025-04-15 14:06:45] Working with state: MS
## Adding missing grouping variables: `census_region`
## Reading layer `tl_2020_28_tract' from data source 
##   `/tmp/RtmpNVZfXa/temp_libpath20d2410713c6/CensusHLA/extdata/tiger_2020/tract/tl_2020_28_tract.shp' 
##   using driver `ESRI Shapefile'
## Simple feature collection with 878 features and 12 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XY
## Bounding box:  xmin: -91.65501 ymin: 30.13984 xmax: -88.09789 ymax: 34.9961
## Geodetic CRS:  NAD83
## INFO [2025-04-15 14:06:51] Working with state: MS
## Data has been transformed to EPSG:4326.
## Warning: st_centroid assumes attributes are constant over geometries
## Data has been transformed to EPSG:4326.
## Joining with `by = join_by(nmdp_race_code)`
ms_4$p1

D - B58:01 Catchment

gg_catchment <- plot_delNero2022_catchment_areas(
  query_allele = 'B*58:01',
  CensusHLA::b58_catchment_summed$sf_tract_centroids_for_all_states_with_catchment_with_us_population_race_code_percentages_by_tract_summed
)
## Warning in layer_sf(geom = GeomSf, data = data, mapping = mapping, stat = stat,
## : Ignoring unknown parameters: `line`
gg_catchment

Tables

Table 1: United States 2020 Census Adjusted HLA-A*11:01 Genotypic Frequencies

CensusHLA::us_pop_multirace_in_nmdp_codes |> 
  dplyr::left_join(
  CensusHLA::nmdp_hla_frequencies_by_race_us_2020_census_adjusted |> 
    dplyr::filter(allele == 'A*11:01') |> 
    dplyr::select(allele, allele, nmdp_race_code,us_2020_percent_pop,nmdp_calc_gf,us_2020_nmdp_gf) |> 
    dplyr::arrange(desc(us_2020_percent_pop))
  ) |> 
  # Convert percentages and gfs to percentages
  dplyr::mutate(
    us_2020_percent_pop = us_2020_percent_pop * 100,
    nmdp_calc_gf = nmdp_calc_gf * 100,
    us_2020_nmdp_gf = us_2020_nmdp_gf * 100
  ) |>
  # Round percentages and gf to 1 digit after decimal
  dplyr::mutate(
    us_2020_percent_pop = round(us_2020_percent_pop, 1),
    nmdp_calc_gf = round(nmdp_calc_gf, 1),
    us_2020_nmdp_gf = round(us_2020_nmdp_gf, 1)
  ) |>
  dplyr::select(
    `Ethnic Code` = nmdp_race_code,
    `Allele` = allele,
    `Single Race Population` =  total_single_race_pop,
    `Multi-Race Population ` = total_multiple_race_pop,
    `Total Population` = total_2020_pop,
    `Percentage of Total Pop` = us_2020_percent_pop,
    `NMDP Calcualted GF` = nmdp_calc_gf,
    `Population-Adjusted GF` = us_2020_nmdp_gf
  ) 
## Joining with `by = join_by(nmdp_race_code)`
## # A tibble: 6 × 8
##   `Ethnic Code` Allele  `Single Race Population` `Multi-Race Population `
##   <chr>         <chr>                      <dbl>                    <dbl>
## 1 AFA           A*11:01                 39940338                  2064019
## 2 API           A*11:01                 20240737                  1820295
## 3 CAU           A*11:01                191697647                  5944911
## 4 HIS           A*11:01                 62080044                        0
## 5 NAM           A*11:01                  2251699                  2131361
## 6 UNK           NA                       1689833                  1419206
## # ℹ 4 more variables: `Total Population` <dbl>,
## #   `Percentage of Total Pop` <dbl>, `NMDP Calcualted GF` <dbl>,
## #   `Population-Adjusted GF` <dbl>

Table 2: HLA-A*11:01 Population-adjusted genotypic frequencies for top 11 NCI Catchment areas.

CensusHLA::a11_catchment_summed$sf_tract_centroids_for_all_states_with_catchment_with_us_population_race_code_percentages_by_tract_summed |> dplyr::select(-geometry) |> dplyr::mutate(patient_pop = total_2020_pop * us_2020_nmdp_gf_sum) |>  dplyr::arrange(desc(patient_pop)) |> DT::datatable(
  ,filter = 'top'
  ,rownames = FALSE
  ,extensions = 'Buttons', options = list(
    scrollX=TRUE,
    pageLength = 11,
    dom = 'Bfrtip',
    buttons = c('copy', 'csv', 'excel', 'pdf', 'colvis')
    )
  )
## Warning in instance$preRenderHook(instance): It seems your data is too big for
## client-side DataTables. You may consider server-side processing:
## https://rstudio.github.io/DT/server.html

Supplemental 1 - California County population-adjusted HLA-A*11:01 Genotypic frequencies

info_by_county <- CensusHLA::census_adjusted_nmdp_hla_frequencies_by_county |> 
  dplyr::filter(state %in% c('California')) |> 
  dplyr::filter(allele %in% c('A*11:01','A*02:01','A*03:01'))

out_data <- info_by_county |>
  dplyr::ungroup() |>
  dplyr::filter(allele == 'A*11:01') |>
  dplyr::group_by(region, state, census_region, county, fips, loci, allele) |>
  dplyr::summarize(gf = sum(us_2020_nmdp_gf),
                   population = sum(total_2020_pop)) |>
  dplyr::filter(!(is.na(gf))) |>
  # Create a STATEFP and COUNTYFP column by breaking the fips column on the 3rd character to the end
  dplyr::mutate(STATEFP = substr(fips, 1, 2),
                COUNTYFP = substr(fips, 3, nchar(fips)))
## `summarise()` has grouped output by 'region', 'state', 'census_region',
## 'county', 'fips', 'loci'. You can override using the `.groups` argument.
out_data <- out_data |> 
  dplyr::arrange(desc(gf))
out_data
## # A tibble: 58 × 11
## # Groups:   region, state, census_region, county, fips, loci [58]
##    region state census_region county fips  loci  allele    gf population STATEFP
##    <chr>  <chr> <chr>         <chr>  <chr> <chr> <chr>  <dbl>      <dbl> <chr>  
##  1 us     Cali… Santa Clara … Santa… 06085 A     A*11:… 0.189    1918185 06     
##  2 us     Cali… San Francisc… San F… 06075 A     A*11:… 0.178     862909 06     
##  3 us     Cali… San Mateo Co… San M… 06081 A     A*11:… 0.172     753795 06     
##  4 us     Cali… Alameda Coun… Alame… 06001 A     A*11:… 0.170    1662962 06     
##  5 us     Cali… Orange Count… Orang… 06059 A     A*11:… 0.152    3159127 06     
##  6 us     Cali… Sutter Count… Sutte… 06101 A     A*11:… 0.143      98545 06     
##  7 us     Cali… Contra Costa… Contr… 06013 A     A*11:… 0.141    1150646 06     
##  8 us     Cali… Trinity Coun… Trini… 06105 A     A*11:… 0.140      15896 06     
##  9 us     Cali… Sacramento C… Sacra… 06067 A     A*11:… 0.140    1564896 06     
## 10 us     Cali… San Joaquin … San J… 06077 A     A*11:… 0.136     771652 06     
## # ℹ 48 more rows
## # ℹ 1 more variable: COUNTYFP <chr>

Supplemental 2 - United States 2020 Census Adjusted HLA-B*58:01 Genotypic Frequencies for Mississippi

CensusHLA::us_pop_multirace_in_nmdp_codes |> 
  dplyr::left_join(
  CensusHLA::census_adjusted_nmdp_hla_frequencies_by_state |> dplyr::filter(allele == 'B*58:01') |> 
  dplyr::filter(census_region == 'Mississippi') |> 
    dplyr::select(allele,census_region,nmdp_race_code,us_2020_percent_pop,nmdp_calc_gf,us_2020_nmdp_gf) |> 
    dplyr::arrange(desc(us_2020_percent_pop))
  ) |> 
  # Convert percentages and gfs to percentages
  dplyr::mutate(
    us_2020_percent_pop = us_2020_percent_pop * 100,
    nmdp_calc_gf = nmdp_calc_gf * 100,
    us_2020_nmdp_gf = us_2020_nmdp_gf * 100
  ) |>
  # Round percentages and gf to 1 digit after decimal
  dplyr::mutate(
    us_2020_percent_pop = round(us_2020_percent_pop, 1),
    nmdp_calc_gf = round(nmdp_calc_gf, 1),
    us_2020_nmdp_gf = round(us_2020_nmdp_gf, 1)
  ) |>
  dplyr::select(
    `Region` = census_region,
    `Ethnic Code` = nmdp_race_code,
    `Allele` = allele,
    `Single Race Population` =  total_single_race_pop,
    `Multi-Race Population ` = total_multiple_race_pop,
    `Total Population` = total_2020_pop,
    `Percentage of Total Pop` = us_2020_percent_pop,
    `NMDP Calcualted GF` = nmdp_calc_gf,
    `Population-Adjusted GF` = us_2020_nmdp_gf
  ) 
## Joining with `by = join_by(nmdp_race_code)`
## # A tibble: 6 × 9
##   Region      `Ethnic Code` Allele Single Race Populati…¹ Multi-Race Populatio…²
##   <chr>       <chr>         <chr>                   <dbl>                  <dbl>
## 1 Mississippi AFA           B*58:…               39940338                2064019
## 2 Mississippi API           B*58:…               20240737                1820295
## 3 Mississippi CAU           B*58:…              191697647                5944911
## 4 Mississippi HIS           B*58:…               62080044                      0
## 5 Mississippi NAM           B*58:…                2251699                2131361
## 6 NA          UNK           NA                    1689833                1419206
## # ℹ abbreviated names: ¹​`Single Race Population`, ²​`Multi-Race Population `
## # ℹ 4 more variables: `Total Population` <dbl>,
## #   `Percentage of Total Pop` <dbl>, `NMDP Calcualted GF` <dbl>,
## #   `Population-Adjusted GF` <dbl>
  #dplyr::select(allele, us_2020_nmdp_gf) |> 
  #dplyr::summarize(gf = sum(us_2020_nmdp_gf))

Supplemental 3 - Mississippi County population-adjusted HLA-B*58:01 Genotypic frequencies

info_by_county <- CensusHLA::census_adjusted_nmdp_hla_frequencies_by_county |> 
  dplyr::filter(state %in% c('Mississippi')) |> 
  dplyr::filter(allele %in% c('B*58:01'))

out_data <- info_by_county |>
  dplyr::ungroup() |>
  dplyr::filter(allele == 'B*58:01') |>
  dplyr::group_by(region, state, census_region, county, fips, loci, allele) |>
  dplyr::summarize(gf = sum(us_2020_nmdp_gf),
                   population = sum(total_2020_pop)) |>
  dplyr::filter(!(is.na(gf))) |>
  # Create a STATEFP and COUNTYFP column by breaking the fips column on the 3rd character to the end
  dplyr::mutate(STATEFP = substr(fips, 1, 2),
                COUNTYFP = substr(fips, 3, nchar(fips)))
## `summarise()` has grouped output by 'region', 'state', 'census_region',
## 'county', 'fips', 'loci'. You can override using the `.groups` argument.
out_data <- out_data |> 
  dplyr::arrange(desc(gf))
out_data
## # A tibble: 82 × 11
## # Groups:   region, state, census_region, county, fips, loci [82]
##    region state       census_region  county fips  loci  allele     gf population
##    <chr>  <chr>       <chr>          <chr>  <chr> <chr> <chr>   <dbl>      <dbl>
##  1 us     Mississippi Claiborne Cou… Claib… 28021 B     B*58:… 0.0679       9112
##  2 us     Mississippi Jefferson Cou… Jeffe… 28063 B     B*58:… 0.0667       7238
##  3 us     Mississippi Holmes County… Holme… 28051 B     B*58:… 0.0659      16964
##  4 us     Mississippi Humphreys Cou… Humph… 28053 B     B*58:… 0.0629       7762
##  5 us     Mississippi Tunica County… Tunic… 28143 B     B*58:… 0.0622       9715
##  6 us     Mississippi Coahoma Count… Coaho… 28027 B     B*58:… 0.0619      21314
##  7 us     Mississippi Leflore Count… Leflo… 28083 B     B*58:… 0.0608      28286
##  8 us     Mississippi Quitman Count… Quitm… 28119 B     B*58:… 0.0602       6159
##  9 us     Mississippi Washington Co… Washi… 28151 B     B*58:… 0.0592      44791
## 10 us     Mississippi Sharkey Count… Shark… 28125 B     B*58:… 0.0587       3778
## # ℹ 72 more rows
## # ℹ 2 more variables: STATEFP <chr>, COUNTYFP <chr>

Supplemental 4 - HLA-B*58:01 Population-adjusted genotypic frequencies by NCI Catchment areas.

CensusHLA::b58_catchment_summed$sf_tract_centroids_for_all_states_with_catchment_with_us_population_race_code_percentages_by_tract_summed |> dplyr::select(-geometry) |> dplyr::mutate(patient_pop = total_2020_pop * us_2020_nmdp_gf_sum) |>  dplyr::arrange(desc(patient_pop)) |> DT::datatable(
  ,filter = 'top'
  ,rownames = FALSE
  ,extensions = 'Buttons', options = list(
    scrollX=TRUE,
    pageLength = 11,
    dom = 'Bfrtip',
    buttons = c('copy', 'csv', 'excel', 'pdf', 'colvis')
    )
  )
## Warning in instance$preRenderHook(instance): It seems your data is too big for
## client-side DataTables. You may consider server-side processing:
## https://rstudio.github.io/DT/server.html

System and Session info

## R version 4.4.1 (2024-06-14)
## Platform: x86_64-pc-linux-gnu
## Running under: Rocky Linux 9.4 (Blue Onyx)
## 
## Matrix products: default
## BLAS/LAPACK: FlexiBLAS OPENBLAS-OPENMP;  LAPACK version 3.9.0
## 
## locale:
##  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
##  [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
##  [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
##  [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
##  [9] LC_ADDRESS=C               LC_TELEPHONE=C            
## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       
## 
## time zone: UTC
## tzcode source: system (glibc)
## 
## attached base packages:
## [1] stats     graphics  grDevices utils     datasets  methods   base     
## 
## other attached packages:
## [1] dplyr_1.1.4          ggplot2_3.5.1        CensusHLA_0.1.0.9000
## 
## loaded via a namespace (and not attached):
##  [1] gtable_0.3.6                  xfun_0.49                    
##  [3] bslib_0.8.0                   htmlwidgets_1.6.4            
##  [5] tigris_2.1                    crosstalk_1.2.1              
##  [7] vctrs_0.6.5                   tools_4.4.1                  
##  [9] generics_0.1.3                curl_6.0.1                   
## [11] tibble_3.2.1                  proxy_0.4-27                 
## [13] pkgconfig_2.0.3               KernSmooth_2.23-26           
## [15] desc_1.4.3                    uuid_1.2-1                   
## [17] lifecycle_1.0.4               h3jsr_1.3.1                  
## [19] compiler_4.4.1                farver_2.1.2                 
## [21] stringr_1.5.1                 textshaping_0.4.1            
## [23] munsell_0.5.1                 terra_1.8-5                  
## [25] codetools_0.2-20              htmltools_0.5.8.1            
## [27] class_7.3-23                  sass_0.4.9                   
## [29] yaml_2.3.10                   tidyr_1.3.1                  
## [31] pillar_1.10.0                 pkgdown_2.1.1                
## [33] jquerylib_0.1.4               DT_0.33                      
## [35] classInt_0.4-10               cachem_1.1.0                 
## [37] wk_0.9.4                      viridis_0.6.5                
## [39] tidyselect_1.2.1              digest_0.6.37                
## [41] censusapi_0.8.0               stringi_1.8.4                
## [43] purrr_1.0.4                   sf_1.0-19                    
## [45] labeling_0.4.3                rnaturalearth_1.0.1          
## [47] fastmap_1.2.0                 grid_4.4.1                   
## [49] colorspace_2.1-1              cli_3.6.4                    
## [51] magrittr_2.0.3                utf8_1.2.4                   
## [53] e1071_1.7-16                  withr_3.0.2                  
## [55] scales_1.3.0                  rappdirs_0.3.3               
## [57] rmarkdown_2.29                lambda.r_1.2.4               
## [59] httr_1.4.7                    gridExtra_2.3                
## [61] futile.logger_1.4.3           rnaturalearthhires_1.0.0.9000
## [63] ragg_1.3.3                    evaluate_1.0.1               
## [65] knitr_1.49                    V8_6.0.0                     
## [67] viridisLite_0.4.2             s2_1.1.7                     
## [69] rlang_1.1.5                   futile.options_1.0.1         
## [71] usmap_0.7.1                   Rcpp_1.0.13-1                
## [73] glue_1.8.0                    DBI_1.2.3                    
## [75] geojsonsf_2.0.3               formatR_1.14                 
## [77] rstudioapi_0.17.1             usmapdata_0.3.0              
## [79] jsonlite_1.8.9                R6_2.5.1                     
## [81] systemfonts_1.1.0             fs_1.6.5                     
## [83] units_0.8-5
##                                               sysname 
##                                               "Linux" 
##                                               release 
##                        "5.14.0-427.22.1.el9_4.x86_64" 
##                                               version 
## "#1 SMP PREEMPT_DYNAMIC Wed Jun 19 17:35:04 UTC 2024" 
##                                              nodename 
##         "ip-10-110-10-102.us-west-2.compute.internal" 
##                                               machine 
##                                              "x86_64" 
##                                                 login 
##                                             "unknown" 
##                                                  user 
##                                       "christian.roy" 
##                                        effective_user 
##                                       "christian.roy"